Principios de la entrega continua
Conoce los principios bĆ”sicos de la entrega continua con estas guĆas de primeros pasos.

La entrega continua (CD) es una colección de muchas prĆ”cticas recomendadas de organización y metodologĆa Ć”gil. Con la CD, una organización se centra en la creación de un proceso de publicación de software sencillo y automatizado. La pieza central de este proceso de publicación es un ciclo de feedback iterativo. El ciclo de feedback gira en torno a la entrega de software al usuario final lo mĆ”s rĆ”pido posible, aprendiendo de la experiencia prĆ”ctica e incorporando ese feedback en la siguiente publicación.
Comparación de integración continua, entrega continua e implementación continua
Para lograr servicios ininterrumpidos es necesario sincronizar la estructura, los valores y las herramientas del equipo para que la excelencia operativa se convierta en una competencia bĆ”sica. Leer el artĆculo
El valor de negocio de la entrega continua
El valor de negocio de la entrega continua no se reduce a las empresas tecnológicas que son el ojito derecho de los inversores. La CD mejora la velocidad, la productividad y la sostenibilidad de los equipos de desarrollo de software. Leer el artĆculo
Mapas del flujo de valor
Los mapas de flujo de valor son una tĆ©cnica de anĆ”lisis con la que podrĆ”s optimizar tu canalización de entrega continua. Descubre cómo y por quĆ© se usa esta tĆ©cnica. Leer el artĆculo
La CD es una metodologĆa inclusiva para toda la organización que acoge tambiĆ©n a los equipos que no son de ingenierĆa, como los de diseƱo, producto y marketing. La CD anima a los desarrolladores a centrarse en entregar el producto al usuario final, mientras que los entornos que no son de CD pueden hacer que los desarrolladores acaben centrĆ”ndose en complacer al equipo de control de calidad. En las próximas secciones analizaremos principiosĀ concretos que sientan las bases para los flujos de trabajo de CD.

Proceso fiable y reproducible
Los procesos organizativos tienen su propio ciclo de vida de desarrollo. Por lo general, comienzan como "manuales de estrategias" o checklists manuales, que son listas de tareas que se realizan de forma manual. Posteriormente se pueden automatizar con herramientas de software y scripts. Al convertir estos manuales de estrategias en scripts de software, te asegurarÔs de que son reproducibles. Si hay que volver a ejecutar una checklist, cualquier miembro del equipo puede ejecutar el script. La fiabilidad se consigue cuando estos scripts de manuales de estrategias se ejecutan de manera coherente entre entornos. Por ejemplo, el manual de estrategias para implementar código en un entorno de ensayo o de desarrollo debe reflejar el entorno de producción de la manera mÔs fiel posible. Esta uniformidad fiable entre entornos y ejecuciones elimina todo un grupo de errores de consistencia.
Automatiza todo
La automatización es un valor clave de la CD. El tiempo de las personas es oro y se debe reservar a tareas creativas, y no a ejecutar tediosas tareas del manual de estrategias. Un proceso manual no es realmente reproducible ni fiable hasta que no se ha introducido en el código mediante una confirmación y se puede ejecutar automÔticamente bajo demanda. Las tareas automatizadas pueden aglutinarse para crear mÔs niveles de automatización. Automatiza tanto como sea posible: pruebas, publicaciones, cambios de configuración, etc.
Control de versiones
El control de versiones es una piedra angular de la CD y una necesidad absoluta para cualquier proyecto de software serio. El control de versiones permite a un equipo de desarrolladores colaborar de forma eficaz en una base de código compartida. Git es el sistema de control de versiones mÔs usado y un complemento excelente para la CD. El control de versiones habilita la funcionalidad "deshacer", lo que permite revertir a candidatos de publicación anteriores. AdemÔs del código, conviene llevar un control de versiones de la configuración, los scripts, las bases de datos y la documentación para hacer el seguimiento de cambios a lo largo del historial.
Integra la calidad
En la CD, la calidad no se añade a última hora, cuando todo pasa al equipo de control de calidad. Al contrario: la calidad estÔ integrada en todos los pasos de la canalización de publicación. El ciclo de feedback central de CD reevalúa de forma constante la calidad que se va a entregar a los usuarios finales. Las nuevas funciones se entregan con conjuntos de pruebas automatizadas para garantizar que el nuevo código estÔ libre de errores y que cumple con las expectativas de calidad. La planificación de proyecto para publicaciones de nuevas funciones debe incluir consideraciones sobre anÔlisis, supervisión del rendimiento y tareas de instrumentación de pruebas automatizadas.
Haz lo mĆ”s difĆcil primero
Las tareas espinosas, que consumen mucho tiempo o son propensas a errores se complican con el tiempo. Por eso, deben abordarse lo antes posible para evitar una pĆ©rdida de energĆa que empeore todavĆa mĆ”s las cosas. Imagina que tienes una tarea latosa que se tarda 20Ā minutos en hacer y que se ejecuta 5Ā veces a la semana. Eso acaba resultando en 100 minutos de sufrimiento a la semana y alrededor de 400 al mes... Ahora, imagina que puedes optimizarla y ahorrarte todo ese tiempo. No hay mucho que pensar, Āæverdad?
"Hacer lo mĆ”s difĆcil primero" tambiĆ©n sirve para identificar debilidades en el proceso organizativo. Si hay una tarea que se procrastina o se evita activamente, es un indicador de que podrĆas estar ante un Ć”rea de mejora que deberĆa abordarse de forma activa. De vez en cuando, los equipos deben tomar contacto con estos retos para estar familiarizados con ellos y tenerlos presentes en las conversaciones de planificación.
La responsabilidad es de todos
Hay que centrar la atención de toda la organización e incentivarla para garantizar que la entrega al usuario final tenga la mayor calidad posible. Los gestores de productos deben planificar prestando atención a la implementación y la garantĆa de calidad. El equipo de seguridad debe participar activamente en el proceso de publicación. Los miembros del equipo de control de calidad deben probar los entornos de ensayo y de desarrollo con tanto rigor como lo harĆan en la producción para detectar cualquier fallo antes de la publicación final. Los desarrolladores deben planificar activamente la publicación de la producción.

Algo solo estĆ” "hecho" cuando se ha publicado
El trabajo de las empresas de software es entregar software a los usuarios finales. Si una aplicación solo funciona en la mÔquina de un desarrollador no hay negocio. Si oyes un "a mà me funciona", haz sonar las alarmas: significa que alguien no tiene muy presente el objetivo global del negocio o que no empatiza con el usuario final. La CD estÔ totalmente centrada en el lanzamiento de software para el cliente final. AdemÔs, algo no estÔ "hecho" porque el trabajo de una persona haya terminado. Para dar algo por terminado, todo el equipo ha de haber finalizado su parte.
Mejora continua
El mĆ©todo de CD no se detiene en la implementación. Como ya hemos visto, el ciclo de feedback es su pieza central y eso significa que a la implementación le sigue una fase adicional de supervisión y medición de su eficacia. En esta etapa, a su vez, se utilizan herramientas automatizadas para medir el impacto de la implementación en el usuario final. Para medir ese efecto, se supervisan parĆ”metros obvios como los ingresos empresariales, pero tambiĆ©n otros mĆ”s detallados como Ćndices de conversión de usuarios o tiempo de interacción.
El valor de la entrega continua
Espero que las secciones anteriores te hayan hecho ver el gran valor aƱadido de la entrega continua. A nivel macro, la CD promueve la eficiencia de la ejecución, la comunicación entre equipos, la adecuación al mercado de los productos, la agilidad y la transparencia general de la organización.Ā
A nivel micro, la CD se puede instrumentar con mediciones de parĆ”metros de seguimiento explĆcitos. Estos son algunos parĆ”metros prĆ”cticos de CD:
Tiempo desde la fase de diseño de una nueva función hasta la publicación a producción.
Cantidad de errores de producción que encuentran los usuarios.
Grado de interacción del usuario con las nuevas funciones.
Frecuencia de publicación de nuevas funciones
AdemÔs, la CD puede servir como base para crear parÔmetros de rendimiento de la organización, como KPI. Por último, los ingresos finales y el estado financiero son una forma excelente de medir el impacto de las prÔcticas organizativas.
Primeros pasos con la entrega continua
Ahora que conoces las ventajas y los principios de la entrega continua, el siguiente paso es implementarla. Un buen punto de partida es la integración continua. La integración continua (CI, por sus siglas en inglĆ©s) es la precursora de la entrega continua y se centra en automatizar el flujo de trabajo de la publicación de código. Lo hace con el uso de herramientas automatizadas de prueba de código y tareas de control de calidad. Cuando la CI estĆ” a punto, puede ser la base para crear procesos de CD, con los que implementar código para los usuarios finales y desarrollar un ciclo de feedback que guĆe futuras publicaciones.